\hypertarget{class_i_visitor}{\section{I\+Visitor Class Reference}
\label{class_i_visitor}\index{I\+Visitor@{I\+Visitor}}
}


Interface for a A\+S\+T node visitor.  




{\ttfamily \#include $<$I\+Visitor.\+h$>$}

Inheritance diagram for I\+Visitor\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_i_visitor}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_i_visitor_a1f982003291f872f6f3781456b295e8a}{I\+Visitor} ()
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
virtual \hyperlink{class_i_visitor_a05534ba3ad2710875aa918c3d917a088}{$\sim$\+I\+Visitor} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_ae7fbb5a13c0f5e61463c1d51c739967a}{Visit\+Program} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Program node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_af731d9fdf691ab6829fb0dbb1fd5d7cd}{Visit\+Name} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Name node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_aee0d0d7cea0b40de09e59ea1fa2ba175}{Visit\+Variable} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Variable node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a5f7f2e181f597bf70307d724caf94116}{Visit\+Rules} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Rules node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_ac0f5f072db3f2a2f05c90266bc93eecd}{Visit\+Rules\+Set} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Rules Set node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_ade17c331d57ecf5dc71c21bfa9ce7fa7}{Visit\+Rule} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Rule node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_abf1444f208c17bf4136a2f31156548c1}{Visit\+Condition} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Condition node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a50319511442d9f6dcd3e1004d8cfcad9}{Visit\+Logic\+Operator} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Logic Operator node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a51f3f6ca2fee198d2bbe735b55a6af4b}{Visit\+Internal\+Condition} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Internal Condition node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a452639e59473aec73812d0b7f8b2f14d}{Visit\+Comparation\+Operator} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Comparation Operator node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_ac60e479891f68b06183c58f8584d8bcd}{Visit\+Arithmetic\+Operator} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Arithmetic Operator node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a2a3c962f35fa5899e25517bc18011274}{Visit\+Arithmetic\+Expression} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Arithmetic Expression node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_afb48e355eff12958512a9fb73e055678}{Visit\+Action} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Action node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a198cd01f71a89aa4f1b941ceb618cb1c}{Visit\+Command} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Commands node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_af2f84ff7ad35664db206b2be623820c1}{Visit\+Cmd} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Cmd node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a09f419f349073c475f3fce20039972d1}{Visit\+Assignment} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Assignment node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_ae5864199e016b47cf6f4c5282d054e75}{Visit\+Read\+Sensor} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Read Sensor node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a603440d2064b5614ea96626f76ad7b21}{Visit\+Write\+Actuator} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Write Actuator node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a13d47fe96355953f377482213e9ec2b2}{Visit\+Message} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Message node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_aea34c3f0bdcd9ac4ac2b936561107e94}{Visit\+Identifier} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Identifier node. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_i_visitor_a5506da11bbd7579b56ada2561e278377}{Visit\+Number} (\hyperlink{class_a_s_t_node}{A\+S\+T\+Node} $\ast$node)=0
\begin{DoxyCompactList}\small\item\em visit a Number node. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Interface for a A\+S\+T node visitor. 

\begin{DoxyAuthor}{Author}
Caio Arce Nishibe (\href{mailto:caionishibe@gmail.com}{\tt caionishibe@gmail.\+com}) 
\end{DoxyAuthor}
\begin{DoxyDate}{Date}
August, 2014 
\end{DoxyDate}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_i_visitor_a1f982003291f872f6f3781456b295e8a}{\index{I\+Visitor@{I\+Visitor}!I\+Visitor@{I\+Visitor}}
\index{I\+Visitor@{I\+Visitor}!I\+Visitor@{I\+Visitor}}
\subsubsection[{I\+Visitor}]{\setlength{\rightskip}{0pt plus 5cm}I\+Visitor\+::\+I\+Visitor (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_i_visitor_a1f982003291f872f6f3781456b295e8a}


Default constructor. 

\hypertarget{class_i_visitor_a05534ba3ad2710875aa918c3d917a088}{\index{I\+Visitor@{I\+Visitor}!````~I\+Visitor@{$\sim$\+I\+Visitor}}
\index{````~I\+Visitor@{$\sim$\+I\+Visitor}!I\+Visitor@{I\+Visitor}}
\subsubsection[{$\sim$\+I\+Visitor}]{\setlength{\rightskip}{0pt plus 5cm}I\+Visitor\+::$\sim$\+I\+Visitor (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_i_visitor_a05534ba3ad2710875aa918c3d917a088}


Destructor. 



\subsection{Member Function Documentation}
\hypertarget{class_i_visitor_afb48e355eff12958512a9fb73e055678}{\index{I\+Visitor@{I\+Visitor}!Visit\+Action@{Visit\+Action}}
\index{Visit\+Action@{Visit\+Action}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Action}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Action (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_afb48e355eff12958512a9fb73e055678}


visit a Action node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a4999896cab15d908a15057a867f26b39}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_ae81f271e42cb44121f7a88116fedc5ea}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a2a3c962f35fa5899e25517bc18011274}{\index{I\+Visitor@{I\+Visitor}!Visit\+Arithmetic\+Expression@{Visit\+Arithmetic\+Expression}}
\index{Visit\+Arithmetic\+Expression@{Visit\+Arithmetic\+Expression}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Arithmetic\+Expression}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Arithmetic\+Expression (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a2a3c962f35fa5899e25517bc18011274}


visit a Arithmetic Expression node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_aa852475141658c33651ea2eb79b1cad6}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a84309866bec4ef78ecd72f9e906d1773}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_ac60e479891f68b06183c58f8584d8bcd}{\index{I\+Visitor@{I\+Visitor}!Visit\+Arithmetic\+Operator@{Visit\+Arithmetic\+Operator}}
\index{Visit\+Arithmetic\+Operator@{Visit\+Arithmetic\+Operator}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Arithmetic\+Operator}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Arithmetic\+Operator (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_ac60e479891f68b06183c58f8584d8bcd}


visit a Arithmetic Operator node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a3b126981eeee7f1c81b5fbfbe576ee57}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a93a0768eb5e3699b3152c749f77bc13d}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a09f419f349073c475f3fce20039972d1}{\index{I\+Visitor@{I\+Visitor}!Visit\+Assignment@{Visit\+Assignment}}
\index{Visit\+Assignment@{Visit\+Assignment}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Assignment}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Assignment (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a09f419f349073c475f3fce20039972d1}


visit a Assignment node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a58b6c7f86b73af59756232a02bbcdf92}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_ab959f9523645e91336f5ea64c4207d3a}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_af2f84ff7ad35664db206b2be623820c1}{\index{I\+Visitor@{I\+Visitor}!Visit\+Cmd@{Visit\+Cmd}}
\index{Visit\+Cmd@{Visit\+Cmd}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Cmd}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Cmd (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_af2f84ff7ad35664db206b2be623820c1}


visit a Cmd node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a4cb8ce5ca2adfae194d919955dfac683}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a5265bbdfe51b8f581e2b6166ac461fd1}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a198cd01f71a89aa4f1b941ceb618cb1c}{\index{I\+Visitor@{I\+Visitor}!Visit\+Command@{Visit\+Command}}
\index{Visit\+Command@{Visit\+Command}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Command}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Command (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a198cd01f71a89aa4f1b941ceb618cb1c}


visit a Commands node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a86894cd93f82386c698c85d2aafea6b6}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_aa5b4cbd760ab2d30a6527c19e8012d75}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a452639e59473aec73812d0b7f8b2f14d}{\index{I\+Visitor@{I\+Visitor}!Visit\+Comparation\+Operator@{Visit\+Comparation\+Operator}}
\index{Visit\+Comparation\+Operator@{Visit\+Comparation\+Operator}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Comparation\+Operator}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Comparation\+Operator (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a452639e59473aec73812d0b7f8b2f14d}


visit a Comparation Operator node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_ae81907e0b0f710fa6a92782894b93ccc}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a760b8d7fdd783b97046df079947c5979}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_abf1444f208c17bf4136a2f31156548c1}{\index{I\+Visitor@{I\+Visitor}!Visit\+Condition@{Visit\+Condition}}
\index{Visit\+Condition@{Visit\+Condition}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Condition}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Condition (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_abf1444f208c17bf4136a2f31156548c1}


visit a Condition node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a83bc08b798440c64724bff2c81ab37b0}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_abb72eed102e85ccdde8e9e1485eb2051}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_aea34c3f0bdcd9ac4ac2b936561107e94}{\index{I\+Visitor@{I\+Visitor}!Visit\+Identifier@{Visit\+Identifier}}
\index{Visit\+Identifier@{Visit\+Identifier}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Identifier}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Identifier (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_aea34c3f0bdcd9ac4ac2b936561107e94}


visit a Identifier node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_ac76873dd0e7e1d28ca90d6bc4d5a0cf2}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a60e1e0eff0a188656128de8588c32a25}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a51f3f6ca2fee198d2bbe735b55a6af4b}{\index{I\+Visitor@{I\+Visitor}!Visit\+Internal\+Condition@{Visit\+Internal\+Condition}}
\index{Visit\+Internal\+Condition@{Visit\+Internal\+Condition}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Internal\+Condition}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Internal\+Condition (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a51f3f6ca2fee198d2bbe735b55a6af4b}


visit a Internal Condition node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a892b2452e473441c44b60582cdbb8b39}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_aa63879d28d44b5d746b4755d7c3dbd36}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a50319511442d9f6dcd3e1004d8cfcad9}{\index{I\+Visitor@{I\+Visitor}!Visit\+Logic\+Operator@{Visit\+Logic\+Operator}}
\index{Visit\+Logic\+Operator@{Visit\+Logic\+Operator}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Logic\+Operator}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Logic\+Operator (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a50319511442d9f6dcd3e1004d8cfcad9}


visit a Logic Operator node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_ae624dff58aa6f4db5038c119dc590f6a}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a306c7a434067bbc6aedd15070ccd9a58}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a13d47fe96355953f377482213e9ec2b2}{\index{I\+Visitor@{I\+Visitor}!Visit\+Message@{Visit\+Message}}
\index{Visit\+Message@{Visit\+Message}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Message}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Message (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a13d47fe96355953f377482213e9ec2b2}


visit a Message node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_aed794eaaf5a4d0e4e1f0ffd5d76b8884}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a21ffab1c85514df09450c254d15cd28b}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_af731d9fdf691ab6829fb0dbb1fd5d7cd}{\index{I\+Visitor@{I\+Visitor}!Visit\+Name@{Visit\+Name}}
\index{Visit\+Name@{Visit\+Name}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Name}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Name (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_af731d9fdf691ab6829fb0dbb1fd5d7cd}


visit a Name node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a938a2c7e05bb717abbf4f042a723e2e3}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a4c56fd6639346605e8e1eb9e52518b8e}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a5506da11bbd7579b56ada2561e278377}{\index{I\+Visitor@{I\+Visitor}!Visit\+Number@{Visit\+Number}}
\index{Visit\+Number@{Visit\+Number}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Number}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Number (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a5506da11bbd7579b56ada2561e278377}


visit a Number node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a02a7c10944dc4f3eb1c24f9c9820ed1e}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a60c49f35c9347ba521ce2dd4812c43b6}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_ae7fbb5a13c0f5e61463c1d51c739967a}{\index{I\+Visitor@{I\+Visitor}!Visit\+Program@{Visit\+Program}}
\index{Visit\+Program@{Visit\+Program}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Program}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Program (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_ae7fbb5a13c0f5e61463c1d51c739967a}


visit a Program node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a34311fc43b053d187bc0e1ff4128a8b6}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_aa62e25e4cd0360c4f7981b959954c1ba}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_ae5864199e016b47cf6f4c5282d054e75}{\index{I\+Visitor@{I\+Visitor}!Visit\+Read\+Sensor@{Visit\+Read\+Sensor}}
\index{Visit\+Read\+Sensor@{Visit\+Read\+Sensor}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Read\+Sensor}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Read\+Sensor (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_ae5864199e016b47cf6f4c5282d054e75}


visit a Read Sensor node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a3f33634b3560060f93cf2e6c4856944d}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a20f1199c7d648f93b22f4715b4a64794}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_ade17c331d57ecf5dc71c21bfa9ce7fa7}{\index{I\+Visitor@{I\+Visitor}!Visit\+Rule@{Visit\+Rule}}
\index{Visit\+Rule@{Visit\+Rule}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Rule}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Rule (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_ade17c331d57ecf5dc71c21bfa9ce7fa7}


visit a Rule node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_ad97e2a05a3d2a9465dc23ee3c8008320}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a1f9a61088fc36a8b33bbc8ab547d3607}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a5f7f2e181f597bf70307d724caf94116}{\index{I\+Visitor@{I\+Visitor}!Visit\+Rules@{Visit\+Rules}}
\index{Visit\+Rules@{Visit\+Rules}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Rules}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Rules (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a5f7f2e181f597bf70307d724caf94116}


visit a Rules node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_abdf24276fbd57a66defad1fd26ab6b5f}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a6ebd363a8d5934e719d0dc3549fedeb5}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_ac0f5f072db3f2a2f05c90266bc93eecd}{\index{I\+Visitor@{I\+Visitor}!Visit\+Rules\+Set@{Visit\+Rules\+Set}}
\index{Visit\+Rules\+Set@{Visit\+Rules\+Set}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Rules\+Set}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Rules\+Set (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_ac0f5f072db3f2a2f05c90266bc93eecd}


visit a Rules Set node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a749ecd378e19750fb02f64fb1ed6208e}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_af032fe1e0b55146c330754a0c658905d}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_aee0d0d7cea0b40de09e59ea1fa2ba175}{\index{I\+Visitor@{I\+Visitor}!Visit\+Variable@{Visit\+Variable}}
\index{Visit\+Variable@{Visit\+Variable}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Variable}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Variable (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_aee0d0d7cea0b40de09e59ea1fa2ba175}


visit a Variable node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_aaf381a525658f7f7af805b494aab63c0}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a7bcb063016bbe9c07483881d6d6008ed}{A\+S\+T\+Checker}.

\hypertarget{class_i_visitor_a603440d2064b5614ea96626f76ad7b21}{\index{I\+Visitor@{I\+Visitor}!Visit\+Write\+Actuator@{Visit\+Write\+Actuator}}
\index{Visit\+Write\+Actuator@{Visit\+Write\+Actuator}!I\+Visitor@{I\+Visitor}}
\subsubsection[{Visit\+Write\+Actuator}]{\setlength{\rightskip}{0pt plus 5cm}virtual void I\+Visitor\+::\+Visit\+Write\+Actuator (
\begin{DoxyParamCaption}
\item[{{\bf A\+S\+T\+Node} $\ast$}]{node}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{class_i_visitor_a603440d2064b5614ea96626f76ad7b21}


visit a Write Actuator node. 


\begin{DoxyParams}{Parameters}
{\em node} & node to be visited. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_code_generator_a69edbd517b828ecf95546e8499625b33}{Code\+Generator}, and \hyperlink{class_a_s_t_checker_a4233ebe723a185123a7690212d132e2e}{A\+S\+T\+Checker}.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
C\+:/\+Users/\+Caio/\+Dropbox/\+Mestrado/agents-\/language/\+Compiladores/\+Compiladores/\hyperlink{_i_visitor_8h}{I\+Visitor.\+h}\item 
C\+:/\+Users/\+Caio/\+Dropbox/\+Mestrado/agents-\/language/\+Compiladores/\+Compiladores/\hyperlink{_i_visitor_8cpp}{I\+Visitor.\+cpp}\end{DoxyCompactItemize}
